package com.htd.erp.common;

import java.io.Serializable;
import java.util.List;

import com.htd.erp.model.AbstractEntity;

/**
 * @author Zhang Guilin
 *
 */
public interface Repository extends Serializable {
	
	<T extends AbstractEntity> T create(T t);
	
	<T extends AbstractEntity> T update(T t);
	
	<T extends AbstractEntity> T delete(Class<T> clazz, Long id);
	
	<T extends AbstractEntity> T findById(Class<T> clazz, Long id);
	
	<T extends AbstractEntity> List<T> findAll(Class<T> t);
}
